package rettangolo;

public class Parallelepiped {

    private double base;
    private double altezza;

    public boolean setDimensioni(double pBase, double pAltezza) {
        if (pAltezza > 0 && pBase > 0) {
            this.base = pBase;
            this.altezza = pAltezza;
            return true;
        }
        return false;
    }

    public boolean setAltezza(double pAltezza) {
        if (pAltezza > 0) {
            this.altezza = pAltezza;
            return true;
        }
        return false;
    }

    public boolean setBase(double pBase) {
        if (pBase > 0) {
            this.base = pBase;
            return true;
        }
        return false;
    }

    public double getBase() {
        return this.base;
    }

    public double getAltezza() {
        return this.altezza;
    }

    public double perimetro() {
        double sommabasi;
        double sommaaltezze;
        if(this.altezza< this.base){
        sommabasi = this.base * 4;
        sommaaltezze = this.altezza * 8;
        }else{
        sommabasi = this.altezza * 4;
        sommaaltezze = this.base * 8;
        }
        double perimetro = sommabasi + sommaaltezze;
        return perimetro;
    }

    public double area() {
        double area = this.altezza * this.base * this.altezza;
        return area;
    }

    @Override
    public String toString() {
        return this.base + " x " + this.altezza + " x " + this.altezza;
    }

    @Override
    public boolean equals(Object t) {
        if (t instanceof Parallelepiped) {
            Parallelepiped tt = (Parallelepiped) t;
            return this.altezza == tt.altezza && this.base == tt.base;
        }
        return false;
    }
}
